
kernel/system_call.o：     文件格式 elf32-i386
kernel/system_call.o
体系结构：i386， 标志 0x00000011：
HAS_RELOC, HAS_SYMS
起始地址 0x00000000

节：
Idx Name          Size      VMA       LMA       File off  Algn
  0 .text         00000123  00000000  00000000  00000034  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
  1 .data         00000000  00000000  00000000  00000157  2**0
                  CONTENTS, ALLOC, LOAD, DATA
  2 .bss          00000000  00000000  00000000  00000157  2**0
                  ALLOC
SYMBOL TABLE:
00000000 l    d  .text	00000000 .text
00000000 l    d  .data	00000000 .data
00000000 l    d  .bss	00000000 .bss
00000011 l       *ABS*	00000000 SIG_CHLD
00000000 l       *ABS*	00000000 EAX
00000004 l       *ABS*	00000000 EBX
00000008 l       *ABS*	00000000 ECX
0000000c l       *ABS*	00000000 EDX
00000010 l       *ABS*	00000000 FS
00000014 l       *ABS*	00000000 ES
00000018 l       *ABS*	00000000 DS
0000001c l       *ABS*	00000000 EIP
00000020 l       *ABS*	00000000 CS
00000024 l       *ABS*	00000000 EFLAGS
00000028 l       *ABS*	00000000 OLDESP
0000002c l       *ABS*	00000000 OLDSS
00000000 l       *ABS*	00000000 state
00000004 l       *ABS*	00000000 counter
00000008 l       *ABS*	00000000 priority
0000000c l       *ABS*	00000000 signal
00000010 l       *ABS*	00000000 restorer
00000014 l       *ABS*	00000000 sig_fn
00000043 l       *ABS*	00000000 nr_system_calls
00000000 l       .text	00000000 bad_sys_call
00000008 l       .text	00000000 reschedule
00000048 l       .text	00000000 ret_from_sys_call
000000d9 l       .text	00000000 default_signal
00000014 g       .text	00000000 system_call
000000ec g       .text	00000000 timer_interrupt
00000000         *UND*	00000000 schedule
00000000         *UND*	00000000 sys_call_table
00000000         *UND*	00000000 current
00000000         *UND*	00000000 task
00000000         *UND*	00000000 do_exit
00000000         *UND*	00000000 jiffies
00000000         *UND*	00000000 do_timer


Contents of section .text:
 0000 b8ffffff ffcf6690 68480000 00e9fcff  ......f.hH......
 0010 ffff6690 83f84277 e71e060f a0525153  ..f...Bw.....RQS
 0020 ba100000 008eda8e c2ba1700 00008ee2  ................
 0030 ff148500 00000050 a1000000 00833800  .......P......8.
 0040 75c68378 040074c0 a1000000 003b0500  u..x..t......;..
 0050 00000074 7b8b5c24 20f7c303 00000074  ...t{.\$ ......t
 0060 6f66837c 242c1775 678b580c 0fbccb74  of.|$,.ug.X....t
 0070 5f0fb3cb 89580c8b 5c881483 fb017259  _....X..\.....rY
 0080 74e7c744 88140000 00004187 5c241c83  t..D......A.\$..
 0090 6c24281c 8b542428 50516a1c 525a83c4  l$(..T$(PQj.RZ..
 00a0 0459588b 40106489 0264894a 048b0424  .YX.@.d..d.J...$
 00b0 64894208 8b442408 6489420c 8b44240c  d.B..D$.d.B..D$.
 00c0 64894210 8b442424 64894214 64895a18  d.B..D$$d.B.d.Z.
 00d0 585b595a 0fa1071f cf4183f9 11748a51  X[YZ.....A...t.Q
 00e0 e8fcffff ff83c404 ebe66690 1e060fa0  ..........f.....
 00f0 52515350 b8100000 008ed88e c0b81700  RQSP............
 0100 00008ee0 ff050000 0000b020 e6208b44  ........... . .D
 0110 242083e0 0350e8fc ffffff83 c404e925  $ ...P.........%
 0120 ffffff                               ...             

Disassembly of section .text:

00000000 <bad_sys_call>:
   0:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
   5:	cf                   	iret   
   6:	66 90                	xchg   %ax,%ax

00000008 <reschedule>:
   8:	68 48 00 00 00       	push   $0x48
			9: R_386_32	.text
   d:	e9 fc ff ff ff       	jmp    e <reschedule+0x6>
			e: R_386_PC32	schedule
  12:	66 90                	xchg   %ax,%ax

00000014 <system_call>:
  14:	83 f8 42             	cmp    $0x42,%eax
  17:	77 e7                	ja     0 <bad_sys_call>
  19:	1e                   	push   %ds
  1a:	06                   	push   %es
  1b:	0f a0                	push   %fs
  1d:	52                   	push   %edx
  1e:	51                   	push   %ecx
  1f:	53                   	push   %ebx
  20:	ba 10 00 00 00       	mov    $0x10,%edx
  25:	8e da                	mov    %edx,%ds
  27:	8e c2                	mov    %edx,%es
  29:	ba 17 00 00 00       	mov    $0x17,%edx
  2e:	8e e2                	mov    %edx,%fs
  30:	ff 14 85 00 00 00 00 	call   *0x0(,%eax,4)
			33: R_386_32	sys_call_table
  37:	50                   	push   %eax
  38:	a1 00 00 00 00       	mov    0x0,%eax
			39: R_386_32	current
  3d:	83 38 00             	cmpl   $0x0,(%eax)
  40:	75 c6                	jne    8 <reschedule>
  42:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
  46:	74 c0                	je     8 <reschedule>

00000048 <ret_from_sys_call>:
  48:	a1 00 00 00 00       	mov    0x0,%eax
			49: R_386_32	current
  4d:	3b 05 00 00 00 00    	cmp    0x0,%eax
			4f: R_386_32	task
  53:	74 7b                	je     d0 <ret_from_sys_call+0x88>
  55:	8b 5c 24 20          	mov    0x20(%esp),%ebx
  59:	f7 c3 03 00 00 00    	test   $0x3,%ebx
  5f:	74 6f                	je     d0 <ret_from_sys_call+0x88>
  61:	66 83 7c 24 2c 17    	cmpw   $0x17,0x2c(%esp)
  67:	75 67                	jne    d0 <ret_from_sys_call+0x88>
  69:	8b 58 0c             	mov    0xc(%eax),%ebx
  6c:	0f bc cb             	bsf    %ebx,%ecx
  6f:	74 5f                	je     d0 <ret_from_sys_call+0x88>
  71:	0f b3 cb             	btr    %ecx,%ebx
  74:	89 58 0c             	mov    %ebx,0xc(%eax)
  77:	8b 5c 88 14          	mov    0x14(%eax,%ecx,4),%ebx
  7b:	83 fb 01             	cmp    $0x1,%ebx
  7e:	72 59                	jb     d9 <default_signal>
  80:	74 e7                	je     69 <ret_from_sys_call+0x21>
  82:	c7 44 88 14 00 00 00 	movl   $0x0,0x14(%eax,%ecx,4)
  89:	00 
  8a:	41                   	inc    %ecx
  8b:	87 5c 24 1c          	xchg   %ebx,0x1c(%esp)
  8f:	83 6c 24 28 1c       	subl   $0x1c,0x28(%esp)
  94:	8b 54 24 28          	mov    0x28(%esp),%edx
  98:	50                   	push   %eax
  99:	51                   	push   %ecx
  9a:	6a 1c                	push   $0x1c
  9c:	52                   	push   %edx
  9d:	5a                   	pop    %edx
  9e:	83 c4 04             	add    $0x4,%esp
  a1:	59                   	pop    %ecx
  a2:	58                   	pop    %eax
  a3:	8b 40 10             	mov    0x10(%eax),%eax
  a6:	64 89 02             	mov    %eax,%fs:(%edx)
  a9:	64 89 4a 04          	mov    %ecx,%fs:0x4(%edx)
  ad:	8b 04 24             	mov    (%esp),%eax
  b0:	64 89 42 08          	mov    %eax,%fs:0x8(%edx)
  b4:	8b 44 24 08          	mov    0x8(%esp),%eax
  b8:	64 89 42 0c          	mov    %eax,%fs:0xc(%edx)
  bc:	8b 44 24 0c          	mov    0xc(%esp),%eax
  c0:	64 89 42 10          	mov    %eax,%fs:0x10(%edx)
  c4:	8b 44 24 24          	mov    0x24(%esp),%eax
  c8:	64 89 42 14          	mov    %eax,%fs:0x14(%edx)
  cc:	64 89 5a 18          	mov    %ebx,%fs:0x18(%edx)
  d0:	58                   	pop    %eax
  d1:	5b                   	pop    %ebx
  d2:	59                   	pop    %ecx
  d3:	5a                   	pop    %edx
  d4:	0f a1                	pop    %fs
  d6:	07                   	pop    %es
  d7:	1f                   	pop    %ds
  d8:	cf                   	iret   

000000d9 <default_signal>:
  d9:	41                   	inc    %ecx
  da:	83 f9 11             	cmp    $0x11,%ecx
  dd:	74 8a                	je     69 <ret_from_sys_call+0x21>
  df:	51                   	push   %ecx
  e0:	e8 fc ff ff ff       	call   e1 <default_signal+0x8>
			e1: R_386_PC32	do_exit
  e5:	83 c4 04             	add    $0x4,%esp
  e8:	eb e6                	jmp    d0 <ret_from_sys_call+0x88>
  ea:	66 90                	xchg   %ax,%ax

000000ec <timer_interrupt>:
  ec:	1e                   	push   %ds
  ed:	06                   	push   %es
  ee:	0f a0                	push   %fs
  f0:	52                   	push   %edx
  f1:	51                   	push   %ecx
  f2:	53                   	push   %ebx
  f3:	50                   	push   %eax
  f4:	b8 10 00 00 00       	mov    $0x10,%eax
  f9:	8e d8                	mov    %eax,%ds
  fb:	8e c0                	mov    %eax,%es
  fd:	b8 17 00 00 00       	mov    $0x17,%eax
 102:	8e e0                	mov    %eax,%fs
 104:	ff 05 00 00 00 00    	incl   0x0
			106: R_386_32	jiffies
 10a:	b0 20                	mov    $0x20,%al
 10c:	e6 20                	out    %al,$0x20
 10e:	8b 44 24 20          	mov    0x20(%esp),%eax
 112:	83 e0 03             	and    $0x3,%eax
 115:	50                   	push   %eax
 116:	e8 fc ff ff ff       	call   117 <timer_interrupt+0x2b>
			117: R_386_PC32	do_timer
 11b:	83 c4 04             	add    $0x4,%esp
 11e:	e9 25 ff ff ff       	jmp    48 <ret_from_sys_call>
